#ifndef COMMAND_MANAGER_H
#define COMMAND_MANAGER_H

#include "command.h"

typedef struct
{
    Command **commands;
    int count;
    int capacity;
} CommandManager;

CommandManager *create_command_manager();
void add_command(CommandManager *manager, Command *cmd);
void execute_command(CommandManager *manager, int index, char *response, size_t response_size);
Command *get_command(CommandManager *manager, int index);
void free_command_manager(CommandManager *manager);

#endif // COMMAND_MANAGER_H